﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;

namespace WebApplication1
{
    public class SqlHelper
    {
        //创建
        private static string constr = "server=.;userid=sa;password=123456;database=Student_db";
        private  SqlConnection con= null;
        //构造函数
        public SqlHelper()
        {
            con = new SqlConnection(constr);
        }
        //执行查询的操作
        public DataTable Get(string sql,SqlParameter[]pars)
        {
            try
            {
                //判断是否关闭
                if (con.State == ConnectionState.Closed)
                {
                    //打开通道
                    con.Open();
                }
                SqlCommand cmd = new SqlCommand(sql, con);
                //判断参数数组是否传参
                if (pars != null && pars.Length != 0)
                {
                    //如果有传参才将值传入
                    cmd.Parameters.AddRange(pars);
                }
                //抽水机抽出；
                SqlDataAdapter adapter = new SqlDataAdapter(cmd);
                //建一个水池
                DataSet ds = new DataSet();
                //装东西
                adapter.Fill(ds);


                return ds.Tables[0];
            }
            catch (Exception ex)
            {

                throw new Exception(ex.Message);
            }
            finally
            {
                //释放资源
                if (con!=null)
                {
                    //关闭通道，释放资源
                    con.Close();
                }
            }
        }
        //执行非查询的操作
        public bool Execute(string sql, SqlParameter[] pars)
        {
            try
            {
                //判断是否关闭
                if (con.State==ConnectionState.Closed)
                {
                    //打开通道
                    con.Open();
                }
                SqlCommand cmd = new SqlCommand(sql,con);
                if (pars!=null&&pars.Length!=null)
                {
                    cmd.Parameters.AddRange(pars);
                }
                //返回是否进入下一页
                return cmd.ExecuteNonQuery() > 0;

            }
            catch (Exception ex)
            {

                throw new Exception(ex.Message);
            }
            finally
            {
                //释放资源
                if (con!=null)
                {
                    con.Close();
                }
            }
        }
    }
}